The present disclosure relates generally to information handling systems, and more particularly devices, systems, and methods for incast alleviation.
As the value and use of information continues to increase, individuals and businesses seek additional ways to process and store information. One option is an information handling system (IHS). An IHS generally processes, compiles, stores, and/or communicates information or data. Because technology and information handling needs and requirements may vary between different applications, IHSs may also vary regarding what information is handled, how the information is handled, how much information is processed, stored, or communicated, and how quickly and efficiently the information may be processed, stored, or communicated. The variations in IHSs allow for IHSs to be general or configured for a specific user or specific use. In addition, IHSs may include a variety of hardware and software components that may be configured to process, store, and communicate information and may include one or more computer systems, data storage systems, and networking systems.
Additionally, some embodiments of information handling systems include non-transient, tangible machine-readable media that include executable code that when run by one or more processors, may cause the one or more processors to perform the steps of methods described herein. Some common forms of machine readable media include, for example, floppy disk, flexible disk, hard disk, magnetic tape, any other magnetic medium, CD-ROM, any other optical medium, punch cards, paper tape, any other physical medium with patterns of holes, RAM, PROM, EPROM, FLASH-EPROM, any other memory chip or cartridge, and/or any other medium from which a processor or computer is adapted to read.
Computer networks form the interconnection fabric that enables reliable and rapid communications between computer systems and data processors that are in both close proximity to each other and at distant locations. These networks create a vast spider web of intranets and internets for handling many types of communication and information, which is constantly growing. Making this possible is a vast array of network switching products that make forwarding decisions in order to deliver packets of information from a source system or first network node to a destination system or second network node. Recently a lot of applications have been developed to analyze large data sets, sometimes referred to as “big data.” These types of applications often request large sets of data distributed over several databases and/or clusters of computers. Because data requests based on these types of applications request data from several sources in parallel, a data transfer bottleneck occurs at the receiving edge switch, end system, and/or the requesting end device. The edge switch, end system, and/or end device will buffer the data it receives beyond its throughput, but once that buffer capacity is exceeded, the edge switch, end system, and/or end device will begin to drop packets. This situation is often referred to as the “incast” problem.
Accordingly, it would be desirable to have a system, methods, and products that can aid in alleviating incast problems by distributing the buffer load over multiple devices.